/*
**    Copyright (C) 2003-2011 Institute for Systems Biology
**                            Seattle, Washington, USA.
**
**    This library is free software; you can redistribute it and/or
**    modify it under the terms of the GNU Lesser General Public
**    License as published by the Free Software Foundation; either
**    version 3 of the License, or (at your option) any later version.
**
**    This library is distributed in the hope that it will be useful,
**    but WITHOUT ANY WARRANTY; without even the implied warranty of
**    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
**    Lesser General Public License for more details.
**
**    You should have received a copy of the GNU Lesser General Public
**    License along with this library; if not, write to the Free Software
**    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA
*/

package org.systemsbiology.util;

/**
 * Utility class providing a series of useful reserved characters in ASCII and Unicode character sequences
 * @author trobinso
 */
public class ReservedCharacters {

    /**
	 * ReservedCharacters is not an instantiable class, so the constructor is blocked.
	 */
	@Deprecated
    private ReservedCharacters(){
		throw new UnsupportedOperationException(
                "ReservedCharacters is a static library that should not be instantiated directly.");
	}

    // The standard gamut of line terminators, plus EOF
    public static final char CARRIAGE_RETURN  = 0x000A; /** ASCII carriage return (CR), as char */
    public static final char LINE_FEED        = 0x000D; /** ASCII line feed (LF), as char */
    public static final char RECORD_SEPARATOR = 0x001E; /** ASCII record separator (RS), as char */
    public static final char EOF              = 0xFFFF; /** Sentinel returned from char promotion of -1.
                                                            {@see #skipline}

                                                         (As a bit of trivia, this will break select character traversal
                                                         algoritms defined in Java 1.6 (for instance,
                                                         {@link java.text.CharacterIterator}). If you intend to work
                                                         with raw sequence data defined by this tool, be aware that
                                                         0xffff may have special meaning you might not expect)*/
}
